/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package library;

import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EEnum;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;

/**
 * <!-- begin-user-doc --> The <b>Package</b> for the model. It contains
 * accessors for the meta objects to represent
 * <ul>
 * <li>each class,</li>
 * <li>each feature of each class,</li>
 * <li>each enum,</li>
 * <li>and each data type</li>
 * </ul>
 * <!-- end-user-doc -->
 * 
 * @see library.LibraryFactory
 * @model kind="package"
 * @generated
 */
public interface LibraryPackage extends EPackage {
	/**
	 * The package name. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 */
	String eNAME = "library";

	/**
	 * The package namespace URI. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 */
	String eNS_URI = "http:///org/eclipse/example/library.ecore";

	/**
	 * The package namespace name. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 */
	String eNS_PREFIX = "org.eclipse.example.library";

	/**
	 * The singleton instance of the package. <!-- begin-user-doc --> <!--
	 * end-user-doc -->
	 * 
	 * @generated
	 */
	LibraryPackage eINSTANCE = library.impl.LibraryPackageImpl.init();

	/**
	 * The meta object id for the '{@link library.impl.BookImpl <em>Book</em>}'
	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @see library.impl.BookImpl
	 * @see library.impl.LibraryPackageImpl#getBook()
	 * @generated
	 */
	int BOOK = 0;

	/**
	 * The feature id for the '<em><b>Id</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int BOOK__ID = 0;

	/**
	 * The feature id for the '<em><b>Title</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int BOOK__TITLE = 1;

	/**
	 * The feature id for the '<em><b>Book State</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int BOOK__BOOK_STATE = 2;

	/**
	 * The feature id for the '<em><b>Pages</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int BOOK__PAGES = 3;

	/**
	 * The feature id for the '<em><b>Cover</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int BOOK__COVER = 4;

	/**
	 * The feature id for the '<em><b>Author</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int BOOK__AUTHOR = 5;

	/**
	 * The feature id for the '<em><b>Publisher</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int BOOK__PUBLISHER = 6;

	/**
	 * The number of structural features of the '<em>Book</em>' class. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int BOOK_FEATURE_COUNT = 7;

	/**
	 * The meta object id for the '{@link library.impl.RenterImpl <em>Renter</em>}'
	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @see library.impl.RenterImpl
	 * @see library.impl.LibraryPackageImpl#getRenter()
	 * @generated
	 */
	int RENTER = 1;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENTER__NAME = 0;

	/**
	 * The feature id for the '<em><b>Quota</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENTER__QUOTA = 1;

	/**
	 * The feature id for the '<em><b>Renter State</b></em>' attribute.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENTER__RENTER_STATE = 2;

	/**
	 * The feature id for the '<em><b>Restriction</b></em>' containment
	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENTER__RESTRICTION = 3;

	/**
	 * The number of structural features of the '<em>Renter</em>' class.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENTER_FEATURE_COUNT = 4;

	/**
	 * The meta object id for the '{@link library.impl.RentRecordImpl <em>Rent Record</em>}'
	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @see library.impl.RentRecordImpl
	 * @see library.impl.LibraryPackageImpl#getRentRecord()
	 * @generated
	 */
	int RENT_RECORD = 2;

	/**
	 * The feature id for the '<em><b>Renter</b></em>' reference. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENT_RECORD__RENTER = 0;

	/**
	 * The feature id for the '<em><b>Book</b></em>' reference. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENT_RECORD__BOOK = 1;

	/**
	 * The feature id for the '<em><b>Rent Date</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENT_RECORD__RENT_DATE = 2;

	/**
	 * The feature id for the '<em><b>Expected Return Date</b></em>'
	 * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENT_RECORD__EXPECTED_RETURN_DATE = 3;

	/**
	 * The feature id for the '<em><b>Return Date</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENT_RECORD__RETURN_DATE = 4;

	/**
	 * The number of structural features of the '<em>Rent Record</em>'
	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENT_RECORD_FEATURE_COUNT = 5;

	/**
	 * The meta object id for the '{@link library.impl.BooksImpl <em>Books</em>}'
	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @see library.impl.BooksImpl
	 * @see library.impl.LibraryPackageImpl#getBooks()
	 * @generated
	 */
	int BOOKS = 3;

	/**
	 * The feature id for the '<em><b>Books</b></em>' containment reference
	 * list. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int BOOKS__BOOKS = 0;

	/**
	 * The number of structural features of the '<em>Books</em>' class. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int BOOKS_FEATURE_COUNT = 1;

	/**
	 * The meta object id for the '{@link library.impl.RentersImpl <em>Renters</em>}'
	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @see library.impl.RentersImpl
	 * @see library.impl.LibraryPackageImpl#getRenters()
	 * @generated
	 */
	int RENTERS = 4;

	/**
	 * The feature id for the '<em><b>Renters</b></em>' containment
	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENTERS__RENTERS = 0;

	/**
	 * The number of structural features of the '<em>Renters</em>' class.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENTERS_FEATURE_COUNT = 1;

	/**
	 * The meta object id for the '{@link library.impl.RentRecordsImpl <em>Rent Records</em>}'
	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @see library.impl.RentRecordsImpl
	 * @see library.impl.LibraryPackageImpl#getRentRecords()
	 * @generated
	 */
	int RENT_RECORDS = 5;

	/**
	 * The feature id for the '<em><b>Rent Records</b></em>' containment
	 * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENT_RECORDS__RENT_RECORDS = 0;

	/**
	 * The number of structural features of the '<em>Rent Records</em>'
	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RENT_RECORDS_FEATURE_COUNT = 1;

	/**
	 * The meta object id for the '{@link library.impl.LibraryImpl <em>Library</em>}'
	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @see library.impl.LibraryImpl
	 * @see library.impl.LibraryPackageImpl#getLibrary()
	 * @generated
	 */
	int LIBRARY = 6;

	/**
	 * The feature id for the '<em><b>Books</b></em>' containment
	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int LIBRARY__BOOKS = 0;

	/**
	 * The feature id for the '<em><b>Renters</b></em>' containment
	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int LIBRARY__RENTERS = 1;

	/**
	 * The feature id for the '<em><b>Rent Records</b></em>' containment
	 * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int LIBRARY__RENT_RECORDS = 2;

	/**
	 * The feature id for the '<em><b>Id</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int LIBRARY__ID = 3;

	/**
	 * The number of structural features of the '<em>Library</em>' class.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int LIBRARY_FEATURE_COUNT = 4;

	/**
	 * The meta object id for the '{@link library.impl.RestrictionImpl <em>Restriction</em>}'
	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @see library.impl.RestrictionImpl
	 * @see library.impl.LibraryPackageImpl#getRestriction()
	 * @generated
	 */
	int RESTRICTION = 7;

	/**
	 * The feature id for the '<em><b>End Date</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RESTRICTION__END_DATE = 0;

	/**
	 * The number of structural features of the '<em>Restriction</em>'
	 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int RESTRICTION_FEATURE_COUNT = 1;

	/**
	 * The meta object id for the '{@link library.BookState <em>Book State</em>}'
	 * enum. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @see library.BookState
	 * @see library.impl.LibraryPackageImpl#getBookState()
	 * @generated
	 */
	int BOOK_STATE = 8;

	/**
	 * The meta object id for the '{@link library.RenterState <em>Renter State</em>}'
	 * enum. <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @see library.RenterState
	 * @see library.impl.LibraryPackageImpl#getRenterState()
	 * @generated
	 */
	int RENTER_STATE = 9;

	/**
	 * Returns the meta object for class '{@link library.Book <em>Book</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for class '<em>Book</em>'.
	 * @see library.Book
	 * @generated
	 */
	EClass getBook();

	/**
	 * Returns the meta object for the attribute '{@link library.Book#getTitle <em>Title</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>Title</em>'.
	 * @see library.Book#getTitle()
	 * @see #getBook()
	 * @generated
	 */
	EAttribute getBook_Title();

	/**
	 * Returns the meta object for the attribute '{@link library.Book#getBookState <em>Book State</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>Book State</em>'.
	 * @see library.Book#getBookState()
	 * @see #getBook()
	 * @generated
	 */
	EAttribute getBook_BookState();

	/**
	 * Returns the meta object for the attribute '{@link library.Book#getPages <em>Pages</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>Pages</em>'.
	 * @see library.Book#getPages()
	 * @see #getBook()
	 * @generated
	 */
	EAttribute getBook_Pages();

	/**
	 * Returns the meta object for the attribute '{@link library.Book#getCover <em>Cover</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>Cover</em>'.
	 * @see library.Book#getCover()
	 * @see #getBook()
	 * @generated
	 */
	EAttribute getBook_Cover();

	/**
	 * Returns the meta object for the attribute '{@link library.Book#getAuthor <em>Author</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>Author</em>'.
	 * @see library.Book#getAuthor()
	 * @see #getBook()
	 * @generated
	 */
	EAttribute getBook_Author();

	/**
	 * Returns the meta object for the attribute '{@link library.Book#getPublisher <em>Publisher</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>Publisher</em>'.
	 * @see library.Book#getPublisher()
	 * @see #getBook()
	 * @generated
	 */
	EAttribute getBook_Publisher();

	/**
	 * Returns the meta object for the attribute '{@link library.Book#getId <em>Id</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>Id</em>'.
	 * @see library.Book#getId()
	 * @see #getBook()
	 * @generated
	 */
	EAttribute getBook_Id();

	/**
	 * Returns the meta object for class '{@link library.Renter <em>Renter</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for class '<em>Renter</em>'.
	 * @see library.Renter
	 * @generated
	 */
	EClass getRenter();

	/**
	 * Returns the meta object for the attribute '{@link library.Renter#getName <em>Name</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see library.Renter#getName()
	 * @see #getRenter()
	 * @generated
	 */
	EAttribute getRenter_Name();

	/**
	 * Returns the meta object for the attribute '{@link library.Renter#getQuota <em>Quota</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>Quota</em>'.
	 * @see library.Renter#getQuota()
	 * @see #getRenter()
	 * @generated
	 */
	EAttribute getRenter_Quota();

	/**
	 * Returns the meta object for the attribute '{@link library.Renter#getRenterState <em>Renter State</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>Renter State</em>'.
	 * @see library.Renter#getRenterState()
	 * @see #getRenter()
	 * @generated
	 */
	EAttribute getRenter_RenterState();

	/**
	 * Returns the meta object for the containment reference '{@link library.Renter#getRestriction <em>Restriction</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the containment reference '<em>Restriction</em>'.
	 * @see library.Renter#getRestriction()
	 * @see #getRenter()
	 * @generated
	 */
	EReference getRenter_Restriction();

	/**
	 * Returns the meta object for class '{@link library.RentRecord <em>Rent Record</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for class '<em>Rent Record</em>'.
	 * @see library.RentRecord
	 * @generated
	 */
	EClass getRentRecord();

	/**
	 * Returns the meta object for the reference '{@link library.RentRecord#getRenter <em>Renter</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the reference '<em>Renter</em>'.
	 * @see library.RentRecord#getRenter()
	 * @see #getRentRecord()
	 * @generated
	 */
	EReference getRentRecord_Renter();

	/**
	 * Returns the meta object for the reference '{@link library.RentRecord#getBook <em>Book</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the reference '<em>Book</em>'.
	 * @see library.RentRecord#getBook()
	 * @see #getRentRecord()
	 * @generated
	 */
	EReference getRentRecord_Book();

	/**
	 * Returns the meta object for the attribute '{@link library.RentRecord#getRentDate <em>Rent Date</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>Rent Date</em>'.
	 * @see library.RentRecord#getRentDate()
	 * @see #getRentRecord()
	 * @generated
	 */
	EAttribute getRentRecord_RentDate();

	/**
	 * Returns the meta object for the attribute '{@link library.RentRecord#getExpectedReturnDate <em>Expected Return Date</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>Expected Return Date</em>'.
	 * @see library.RentRecord#getExpectedReturnDate()
	 * @see #getRentRecord()
	 * @generated
	 */
	EAttribute getRentRecord_ExpectedReturnDate();

	/**
	 * Returns the meta object for the attribute '{@link library.RentRecord#getReturnDate <em>Return Date</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>Return Date</em>'.
	 * @see library.RentRecord#getReturnDate()
	 * @see #getRentRecord()
	 * @generated
	 */
	EAttribute getRentRecord_ReturnDate();

	/**
	 * Returns the meta object for class '{@link library.Books <em>Books</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for class '<em>Books</em>'.
	 * @see library.Books
	 * @generated
	 */
	EClass getBooks();

	/**
	 * Returns the meta object for the containment reference list '{@link library.Books#getBooks <em>Books</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the containment reference list '<em>Books</em>'.
	 * @see library.Books#getBooks()
	 * @see #getBooks()
	 * @generated
	 */
	EReference getBooks_Books();

	/**
	 * Returns the meta object for class '{@link library.Renters <em>Renters</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for class '<em>Renters</em>'.
	 * @see library.Renters
	 * @generated
	 */
	EClass getRenters();

	/**
	 * Returns the meta object for the containment reference list '{@link library.Renters#getRenters <em>Renters</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the containment reference list '<em>Renters</em>'.
	 * @see library.Renters#getRenters()
	 * @see #getRenters()
	 * @generated
	 */
	EReference getRenters_Renters();

	/**
	 * Returns the meta object for class '{@link library.RentRecords <em>Rent Records</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for class '<em>Rent Records</em>'.
	 * @see library.RentRecords
	 * @generated
	 */
	EClass getRentRecords();

	/**
	 * Returns the meta object for the containment reference list '{@link library.RentRecords#getRentRecords <em>Rent Records</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the containment reference list '<em>Rent Records</em>'.
	 * @see library.RentRecords#getRentRecords()
	 * @see #getRentRecords()
	 * @generated
	 */
	EReference getRentRecords_RentRecords();

	/**
	 * Returns the meta object for class '{@link library.Library <em>Library</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for class '<em>Library</em>'.
	 * @see library.Library
	 * @generated
	 */
	EClass getLibrary();

	/**
	 * Returns the meta object for the containment reference '{@link library.Library#getBooks <em>Books</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the containment reference '<em>Books</em>'.
	 * @see library.Library#getBooks()
	 * @see #getLibrary()
	 * @generated
	 */
	EReference getLibrary_Books();

	/**
	 * Returns the meta object for the containment reference '{@link library.Library#getRenters <em>Renters</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the containment reference '<em>Renters</em>'.
	 * @see library.Library#getRenters()
	 * @see #getLibrary()
	 * @generated
	 */
	EReference getLibrary_Renters();

	/**
	 * Returns the meta object for the containment reference '{@link library.Library#getRentRecords <em>Rent Records</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the containment reference '<em>Rent Records</em>'.
	 * @see library.Library#getRentRecords()
	 * @see #getLibrary()
	 * @generated
	 */
	EReference getLibrary_RentRecords();

	/**
	 * Returns the meta object for the attribute '{@link library.Library#getId <em>Id</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>Id</em>'.
	 * @see library.Library#getId()
	 * @see #getLibrary()
	 * @generated
	 */
	EAttribute getLibrary_Id();

	/**
	 * Returns the meta object for class '{@link library.Restriction <em>Restriction</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for class '<em>Restriction</em>'.
	 * @see library.Restriction
	 * @generated
	 */
	EClass getRestriction();

	/**
	 * Returns the meta object for the attribute '{@link library.Restriction#getEndDate <em>End Date</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for the attribute '<em>End Date</em>'.
	 * @see library.Restriction#getEndDate()
	 * @see #getRestriction()
	 * @generated
	 */
	EAttribute getRestriction_EndDate();

	/**
	 * Returns the meta object for enum '{@link library.BookState <em>Book State</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for enum '<em>Book State</em>'.
	 * @see library.BookState
	 * @generated
	 */
	EEnum getBookState();

	/**
	 * Returns the meta object for enum '{@link library.RenterState <em>Renter State</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the meta object for enum '<em>Renter State</em>'.
	 * @see library.RenterState
	 * @generated
	 */
	EEnum getRenterState();

	/**
	 * Returns the factory that creates the instances of the model. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return the factory that creates the instances of the model.
	 * @generated
	 */
	LibraryFactory getLibraryFactory();

	/**
	 * <!-- begin-user-doc --> Defines literals for the meta objects that
	 * represent
	 * <ul>
	 * <li>each class,</li>
	 * <li>each feature of each class,</li>
	 * <li>each enum,</li>
	 * <li>and each data type</li>
	 * </ul>
	 * <!-- end-user-doc -->
	 * 
	 * @generated
	 */
	interface Literals {
		/**
		 * The meta object literal for the '{@link library.impl.BookImpl <em>Book</em>}'
		 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @see library.impl.BookImpl
		 * @see library.impl.LibraryPackageImpl#getBook()
		 * @generated
		 */
		EClass BOOK = eINSTANCE.getBook();

		/**
		 * The meta object literal for the '<em><b>Title</b></em>'
		 * attribute feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute BOOK__TITLE = eINSTANCE.getBook_Title();

		/**
		 * The meta object literal for the '<em><b>Book State</b></em>'
		 * attribute feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute BOOK__BOOK_STATE = eINSTANCE.getBook_BookState();

		/**
		 * The meta object literal for the '<em><b>Pages</b></em>'
		 * attribute feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute BOOK__PAGES = eINSTANCE.getBook_Pages();

		/**
		 * The meta object literal for the '<em><b>Cover</b></em>'
		 * attribute feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute BOOK__COVER = eINSTANCE.getBook_Cover();

		/**
		 * The meta object literal for the '<em><b>Author</b></em>'
		 * attribute feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute BOOK__AUTHOR = eINSTANCE.getBook_Author();

		/**
		 * The meta object literal for the '<em><b>Publisher</b></em>'
		 * attribute feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute BOOK__PUBLISHER = eINSTANCE.getBook_Publisher();

		/**
		 * The meta object literal for the '<em><b>Id</b></em>' attribute
		 * feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute BOOK__ID = eINSTANCE.getBook_Id();

		/**
		 * The meta object literal for the '{@link library.impl.RenterImpl <em>Renter</em>}'
		 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @see library.impl.RenterImpl
		 * @see library.impl.LibraryPackageImpl#getRenter()
		 * @generated
		 */
		EClass RENTER = eINSTANCE.getRenter();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute
		 * feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute RENTER__NAME = eINSTANCE.getRenter_Name();

		/**
		 * The meta object literal for the '<em><b>Quota</b></em>'
		 * attribute feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute RENTER__QUOTA = eINSTANCE.getRenter_Quota();

		/**
		 * The meta object literal for the '<em><b>Renter State</b></em>'
		 * attribute feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute RENTER__RENTER_STATE = eINSTANCE.getRenter_RenterState();

		/**
		 * The meta object literal for the '<em><b>Restriction</b></em>'
		 * containment reference feature. <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		 * 
		 * @generated
		 */
		EReference RENTER__RESTRICTION = eINSTANCE.getRenter_Restriction();

		/**
		 * The meta object literal for the '{@link library.impl.RentRecordImpl <em>Rent Record</em>}'
		 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @see library.impl.RentRecordImpl
		 * @see library.impl.LibraryPackageImpl#getRentRecord()
		 * @generated
		 */
		EClass RENT_RECORD = eINSTANCE.getRentRecord();

		/**
		 * The meta object literal for the '<em><b>Renter</b></em>'
		 * reference feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EReference RENT_RECORD__RENTER = eINSTANCE.getRentRecord_Renter();

		/**
		 * The meta object literal for the '<em><b>Book</b></em>' reference
		 * feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EReference RENT_RECORD__BOOK = eINSTANCE.getRentRecord_Book();

		/**
		 * The meta object literal for the '<em><b>Rent Date</b></em>'
		 * attribute feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute RENT_RECORD__RENT_DATE = eINSTANCE.getRentRecord_RentDate();

		/**
		 * The meta object literal for the '<em><b>Expected Return Date</b></em>'
		 * attribute feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute RENT_RECORD__EXPECTED_RETURN_DATE = eINSTANCE
				.getRentRecord_ExpectedReturnDate();

		/**
		 * The meta object literal for the '<em><b>Return Date</b></em>'
		 * attribute feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute RENT_RECORD__RETURN_DATE = eINSTANCE
				.getRentRecord_ReturnDate();

		/**
		 * The meta object literal for the '{@link library.impl.BooksImpl <em>Books</em>}'
		 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @see library.impl.BooksImpl
		 * @see library.impl.LibraryPackageImpl#getBooks()
		 * @generated
		 */
		EClass BOOKS = eINSTANCE.getBooks();

		/**
		 * The meta object literal for the '<em><b>Books</b></em>'
		 * containment reference list feature. <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		 * 
		 * @generated
		 */
		EReference BOOKS__BOOKS = eINSTANCE.getBooks_Books();

		/**
		 * The meta object literal for the '{@link library.impl.RentersImpl <em>Renters</em>}'
		 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @see library.impl.RentersImpl
		 * @see library.impl.LibraryPackageImpl#getRenters()
		 * @generated
		 */
		EClass RENTERS = eINSTANCE.getRenters();

		/**
		 * The meta object literal for the '<em><b>Renters</b></em>'
		 * containment reference list feature. <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		 * 
		 * @generated
		 */
		EReference RENTERS__RENTERS = eINSTANCE.getRenters_Renters();

		/**
		 * The meta object literal for the '{@link library.impl.RentRecordsImpl <em>Rent Records</em>}'
		 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @see library.impl.RentRecordsImpl
		 * @see library.impl.LibraryPackageImpl#getRentRecords()
		 * @generated
		 */
		EClass RENT_RECORDS = eINSTANCE.getRentRecords();

		/**
		 * The meta object literal for the '<em><b>Rent Records</b></em>'
		 * containment reference list feature. <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		 * 
		 * @generated
		 */
		EReference RENT_RECORDS__RENT_RECORDS = eINSTANCE
				.getRentRecords_RentRecords();

		/**
		 * The meta object literal for the '{@link library.impl.LibraryImpl <em>Library</em>}'
		 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @see library.impl.LibraryImpl
		 * @see library.impl.LibraryPackageImpl#getLibrary()
		 * @generated
		 */
		EClass LIBRARY = eINSTANCE.getLibrary();

		/**
		 * The meta object literal for the '<em><b>Books</b></em>'
		 * containment reference feature. <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		 * 
		 * @generated
		 */
		EReference LIBRARY__BOOKS = eINSTANCE.getLibrary_Books();

		/**
		 * The meta object literal for the '<em><b>Renters</b></em>'
		 * containment reference feature. <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		 * 
		 * @generated
		 */
		EReference LIBRARY__RENTERS = eINSTANCE.getLibrary_Renters();

		/**
		 * The meta object literal for the '<em><b>Rent Records</b></em>'
		 * containment reference feature. <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		 * 
		 * @generated
		 */
		EReference LIBRARY__RENT_RECORDS = eINSTANCE.getLibrary_RentRecords();

		/**
		 * The meta object literal for the '<em><b>Id</b></em>' attribute
		 * feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute LIBRARY__ID = eINSTANCE.getLibrary_Id();

		/**
		 * The meta object literal for the '{@link library.impl.RestrictionImpl <em>Restriction</em>}'
		 * class. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @see library.impl.RestrictionImpl
		 * @see library.impl.LibraryPackageImpl#getRestriction()
		 * @generated
		 */
		EClass RESTRICTION = eINSTANCE.getRestriction();

		/**
		 * The meta object literal for the '<em><b>End Date</b></em>'
		 * attribute feature. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @generated
		 */
		EAttribute RESTRICTION__END_DATE = eINSTANCE.getRestriction_EndDate();

		/**
		 * The meta object literal for the '{@link library.BookState <em>Book State</em>}'
		 * enum. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @see library.BookState
		 * @see library.impl.LibraryPackageImpl#getBookState()
		 * @generated
		 */
		EEnum BOOK_STATE = eINSTANCE.getBookState();

		/**
		 * The meta object literal for the '{@link library.RenterState <em>Renter State</em>}'
		 * enum. <!-- begin-user-doc --> <!-- end-user-doc -->
		 * 
		 * @see library.RenterState
		 * @see library.impl.LibraryPackageImpl#getRenterState()
		 * @generated
		 */
		EEnum RENTER_STATE = eINSTANCE.getRenterState();

	}

} // LibraryPackage
